/**
 * 纯蒙版模块入口
 * 导出所有纯蒙版相关的组件和类型
 */

export { PureMaskEngine, type PureMaskConfig } from './PureMaskEngine'
export { PureMaskVisualizer, type PureMaskVisualizerStyle } from './PureMaskVisualizer'
export { PureMaskController, type PureMaskControllerOptions } from './PureMaskController'

// 预设配置
export const PURE_MASK_PRESETS = {
  /** 完全透明（默认） - 弹幕在人物区域完全透明 */
  TRANSPARENT: {
    enabled: true,
    maskOpacity: 0.0,
    smoothEdges: true,
    blurRadius: 5
  },
  
  /** 半透明 - 弹幕在人物区域半透明 */
  SEMI_TRANSPARENT: {
    enabled: true,
    maskOpacity: 0.3,
    smoothEdges: true,
    blurRadius: 8
  },
  
  /** 轻微透明 - 弹幕在人物区域轻微透明 */
  LIGHT_TRANSPARENT: {
    enabled: true,
    maskOpacity: 0.7,
    smoothEdges: true,
    blurRadius: 3
  },
  
  /** 禁用 - 关闭纯蒙版效果 */
  DISABLED: {
    enabled: false,
    maskOpacity: 1.0,
    smoothEdges: false,
    blurRadius: 0
  }
} as const

// 可视化样式预设
export const PURE_MASK_VISUALIZER_PRESETS = {
  /** 绿色调试样式 */
  GREEN_DEBUG: {
    maskColor: '#00ff00',
    maskAlpha: 0.2,
    borderColor: '#00ff00',
    borderWidth: 2,
    showLabels: true,
    labelFontSize: 12,
    labelColor: '#00ff00'
  },
  
  /** 蓝色调试样式 */
  BLUE_DEBUG: {
    maskColor: '#0080ff',
    maskAlpha: 0.15,
    borderColor: '#0080ff',
    borderWidth: 2,
    showLabels: true,
    labelFontSize: 12,
    labelColor: '#0080ff'
  },
  
  /** 红色警告样式 */
  RED_WARNING: {
    maskColor: '#ff4444',
    maskAlpha: 0.25,
    borderColor: '#ff4444',
    borderWidth: 3,
    showLabels: true,
    labelFontSize: 14,
    labelColor: '#ff4444'
  },
  
  /** 简洁样式 */
  MINIMAL: {
    maskColor: '#ffffff',
    maskAlpha: 0.1,
    borderColor: '#ffffff',
    borderWidth: 1,
    showLabels: false,
    labelFontSize: 10,
    labelColor: '#ffffff'
  }
} as const
